home *** CD-ROM | disk | FTP | other *** search
- head 1.3;
- branch ;
- access ;
- symbols ;
- locks ; strict;
- comment @ * @;
-
-
- 1.3
- date 92.04.10.15.46.06; author kupfer; state Exp;
- branches ;
- next 1.2;
-
- 1.2
- date 92.04.07.12.22.39; author kupfer; state Exp;
- branches ;
- next 1.1;
-
- 1.1
- date 92.04.07.12.18.39; author kupfer; state Exp;
- branches ;
- next ;
-
-
- desc
- @Benchmark to see how long fork() takes.
- @
-
-
- 1.3
- log
- @Use "%03d" instead of "%-03d".
- @
- text
- @/* $Header: /sprite/src/benchmarks/fork/RCS/fork.c,v 1.2 92/04/07 12:22:39 kupfer Exp Locker: kupfer $ */
-
- #include <stdio.h>
- #include <sys/types.h>
- #include <sys/file.h>
- #include <sys/time.h>
- #ifdef sprite
- #include "proc.h"
- #endif
-
-
- main(argc, argv)
- int argc;
- char *argv[];
- {
- register int i;
- struct timeval startTime, endTime;
- int pid;
- int numForks = 1000; /* number of times to fork */
-
- if (argc > 1) {
- numForks = atoi(argv[1]);
- }
- gettimeofday(&startTime,0);
- for (i = 0; i < numForks; i++) {
- pid = fork();
- if (pid == 0) {
- /*
- * child.
- */
- _exit(0);
- }
- /*
- * Parent
- */
- wait(0);
- }
- gettimeofday(&endTime,0);
- fixtime(&startTime,&endTime);
- printf("fork test %d forks time %4d.%03d\n", numForks,
- endTime.tv_sec, endTime.tv_usec/1000);
- }
-
- fixtime(s, e)
- struct timeval *s, *e;
- {
-
- e->tv_sec -= s->tv_sec;
- e->tv_usec -= s->tv_usec;
- if (e->tv_usec < 0) {
- e->tv_sec--; e->tv_usec += 1000000;
- }
- }
- @
-
-
- 1.2
- log
- @Let the user specify the number of repetitions. Lint.
- @
- text
- @d1 1
- a1 1
- /* $Header$ */
- d40 1
- a40 1
- printf("fork test %d forks time %4d.%-03d\n", numForks,
- @
-
-
- 1.1
- log
- @Initial revision
- @
- text
- @d1 2
- a16 2
- char fileName[128];
- int numReps, size;
- d19 1
- d21 3
- a23 1
-
- d25 1
- a25 1
- for (i = 0; i < 1000; i++) {
- d40 1
- a40 1
- printf("fork test %d forks time %4d.%-03d\n", 1000,
- d43 1
- @
-